/**
 *
 * 日    期：12-2-23
 */
package com.rop.security;

import java.util.EnumMap;

/**
 * <pre>
 * 功能说明：
 * </pre>
 *
 * @author 
 * @version 1.0
 */
public enum MainErrorType {
    SERVICE_CURRENTLY_UNAVAILABLE,
    INSUFFICIENT_ISV_PERMISSIONS,
    INSUFFICIENT_USER_PERMISSIONS,
    UPLOAD_FAIL,
    HTTP_ACTION_NOT_ALLOWED,
    INVALID_ENCODING,
    FORBIDDEN_REQUEST,
    METHOD_OBSOLETED,
    BUSINESS_LOGIC_ERROR,
    MISSING_SESSION,
    INVALID_SESSION,
    MISSING_APP_KEY,
    INVALID_APP_KEY,
    MISSING_SIGNATURE,
    INVALID_SIGNATURE,
    MISSING_METHOD,
    INVALID_METHOD,
    MISSING_VERSION,
    INVALID_VERSION,
    UNSUPPORTED_VERSION,
    INVALID_FORMAT,
    MISSING_REQUIRED_ARGUMENTS,
    INVALID_ARGUMENTS,
    MISSING_TIMESTAMP,
    INVALID_TIMESTAMP,
    EXCEED_USER_INVOKE_LIMITED,
    EXCEED_SESSION_INVOKE_LIMITED,
    EXCEED_APP_INVOKE_LIMITED,
    EXCEED_APP_INVOKE_FREQUENCY_LIMITED;

    private static EnumMap<MainErrorType, String> errorCodeMap = new EnumMap<MainErrorType, String>(MainErrorType.class);

    static {
        errorCodeMap.put(MainErrorType.SERVICE_CURRENTLY_UNAVAILABLE, "1101");
        errorCodeMap.put(MainErrorType.INSUFFICIENT_ISV_PERMISSIONS, "1102");
        errorCodeMap.put(MainErrorType.INSUFFICIENT_USER_PERMISSIONS, "1103");
        errorCodeMap.put(MainErrorType.UPLOAD_FAIL, "1104");
        errorCodeMap.put(MainErrorType.HTTP_ACTION_NOT_ALLOWED, "1105");
        errorCodeMap.put(MainErrorType.INVALID_ENCODING, "1106");
        errorCodeMap.put(MainErrorType.FORBIDDEN_REQUEST, "1107");
        errorCodeMap.put(MainErrorType.METHOD_OBSOLETED, "1108");
        errorCodeMap.put(MainErrorType.BUSINESS_LOGIC_ERROR, "1109");
        errorCodeMap.put(MainErrorType.MISSING_SESSION, "1120");
        errorCodeMap.put(MainErrorType.INVALID_SESSION, "1121");
        errorCodeMap.put(MainErrorType.MISSING_APP_KEY, "1122");
        errorCodeMap.put(MainErrorType.INVALID_APP_KEY, "1123");
        errorCodeMap.put(MainErrorType.MISSING_SIGNATURE, "1124");
        errorCodeMap.put(MainErrorType.INVALID_SIGNATURE, "1125");
        errorCodeMap.put(MainErrorType.MISSING_METHOD, "1126");
        errorCodeMap.put(MainErrorType.INVALID_METHOD, "1127");
        errorCodeMap.put(MainErrorType.MISSING_VERSION, "1128");
        errorCodeMap.put(MainErrorType.INVALID_VERSION, "1129");
        errorCodeMap.put(MainErrorType.UNSUPPORTED_VERSION, "1130");
        errorCodeMap.put(MainErrorType.INVALID_FORMAT, "1131");
        errorCodeMap.put(MainErrorType.MISSING_REQUIRED_ARGUMENTS, "1132");
        errorCodeMap.put(MainErrorType.INVALID_ARGUMENTS, "1133");
        errorCodeMap.put(MainErrorType.MISSING_TIMESTAMP, "1134");
        errorCodeMap.put(MainErrorType.INVALID_TIMESTAMP, "1135");
        errorCodeMap.put(MainErrorType.EXCEED_USER_INVOKE_LIMITED, "1136");
        errorCodeMap.put(MainErrorType.EXCEED_SESSION_INVOKE_LIMITED, "1137");
        errorCodeMap.put(MainErrorType.EXCEED_APP_INVOKE_LIMITED, "1138");
        errorCodeMap.put(MainErrorType.EXCEED_APP_INVOKE_FREQUENCY_LIMITED, "1139");

    }

    public String value() {
        return errorCodeMap.get(this);
    }
}

